{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "25478952-9120-496e-9b76-d24fa77d7733",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\u001b[2mResolved \u001b[1m170 packages\u001b[0m \u001b[2min 0.92ms\u001b[0m\u001b[0m\n",
      "\u001b[2mAudited \u001b[1m164 packages\u001b[0m \u001b[2min 0.06ms\u001b[0m\u001b[0m\n"
     ]
    }
   ],
   "source": [
    "! uv add langchain"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "6194ef5f-8d70-4c39-b8a1-e5acae0bef40",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\u001b[2mResolved \u001b[1m170 packages\u001b[0m \u001b[2min 0.72ms\u001b[0m\u001b[0m\n",
      "\u001b[2mAudited \u001b[1m164 packages\u001b[0m \u001b[2min 0.04ms\u001b[0m\u001b[0m\n"
     ]
    }
   ],
   "source": [
    "! uv add chromadb"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "4c7fb449-e174-45b8-b0cb-763da974ac23",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\u001b[2mResolved \u001b[1m171 packages\u001b[0m \u001b[2min 656ms\u001b[0m\u001b[0m\n",
      "\u001b[2mPrepared \u001b[1m1 package\u001b[0m \u001b[2min 390ms\u001b[0m\u001b[0m\n",
      "\u001b[1m\u001b[33mwarning\u001b[39m\u001b[0m\u001b[1m:\u001b[0m \u001b[1mFailed to hardlink files; falling back to full copy. This may lead to degraded performance.\n",
      "         If the cache and target directories are on different filesystems, hardlinking may not be supported.\n",
      "         If this is intentional, set `export UV_LINK_MODE=copy` or use `--link-mode=copy` to suppress this warning.\u001b[0m\n",
      "\u001b[2mInstalled \u001b[1m1 package\u001b[0m \u001b[2min 14ms\u001b[0m\u001b[0m\n",
      " \u001b[32m+\u001b[39m \u001b[1mlangchain-chroma\u001b[0m\u001b[2m==0.2.5\u001b[0m\n"
     ]
    }
   ],
   "source": [
    "! uv add langchain-chroma"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "7430ffaa-7290-4292-9bda-f7a7a3c2a5aa",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\u001b[2mResolved \u001b[1m174 packages\u001b[0m \u001b[2min 1.09s\u001b[0m\u001b[0m\n",
      "\u001b[2mPrepared \u001b[1m4 packages\u001b[0m \u001b[2min 1.27s\u001b[0m\u001b[0m\n",
      "\u001b[2mUninstalled \u001b[1m1 package\u001b[0m \u001b[2min 511ms\u001b[0m\u001b[0m\n",
      "\u001b[1m\u001b[33mwarning\u001b[39m\u001b[0m\u001b[1m:\u001b[0m \u001b[1mFailed to hardlink files; falling back to full copy. This may lead to degraded performance.\n",
      "         If the cache and target directories are on different filesystems, hardlinking may not be supported.\n",
      "         If this is intentional, set `export UV_LINK_MODE=copy` or use `--link-mode=copy` to suppress this warning.\u001b[0m\n",
      "\u001b[2mInstalled \u001b[1m4 packages\u001b[0m \u001b[2min 698ms\u001b[0m\u001b[0m\n",
      " \u001b[32m+\u001b[39m \u001b[1mlangchain-openai\u001b[0m\u001b[2m==0.3.31\u001b[0m\n",
      " \u001b[31m-\u001b[39m \u001b[1mopenai\u001b[0m\u001b[2m==1.97.1\u001b[0m\n",
      " \u001b[32m+\u001b[39m \u001b[1mopenai\u001b[0m\u001b[2m==1.101.0\u001b[0m\n",
      " \u001b[32m+\u001b[39m \u001b[1mregex\u001b[0m\u001b[2m==2025.7.34\u001b[0m\n",
      " \u001b[32m+\u001b[39m \u001b[1mtiktoken\u001b[0m\u001b[2m==0.11.0\u001b[0m\n"
     ]
    }
   ],
   "source": [
    "! uv add langchain_openai"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "a9db722d-7d3c-4af2-bff0-66323decf47b",
   "metadata": {},
   "outputs": [],
   "source": [
    "from langchain_chroma import Chroma\n",
    "from langchain_openai import OpenAIEmbeddings\n",
    "from langchain_core.documents import Document\n",
    "import chromadb\n",
    "\n",
    "documents = [\n",
    "    Document(\n",
    "        page_content=\"韩立以谨慎著称，行事前会进行周密谋划，不轻易冒险。他善于利用资源并注重利益权衡，例如在关键时刻隐匿实力或建立有益关系以避免冲突。 低调与隐忍他习惯隐藏真实实力，常通过伪装弱小保护自己，避免过早暴露潜力引发不必要的麻烦。这种性格特质使他在险恶的修仙界得以生存并逐步壮大。 ‌坚韧与目标明确韩立目标坚定，面对瓶颈或生死考验时展现出惊人毅力。他注重修行基础，避免因追求速度而忽视根基，这种特质支撑他突破瓶颈并持续进步。 理性与恩怨分明他遵循“杀伐果断，恩怨分明”的原则，在资源有限的环境中始终以自身利益为核心，但也会在力所能及时帮助他人。\",\n",
    "        metadata={\"source\": \"韩老魔性格.pdf\"},\n",
    "    ),\n",
    "    Document(\n",
    "        page_content=\"韩立的宝物可分为不同阶段的重要物品及战斗法宝两类：关键生存型宝物掌天瓶：核心外挂道具，可催熟灵药、凝聚时间晶粒，助其突破瓶颈并多次穿越时空。青竹蜂云剑：本命法宝，由万年金雷竹炼制，后期精炼至剑心通灵境界，配合剑阵可斩杀同阶修士。风雷翅：由雷鹏双翅炼制，强化后融入鲲鹏之羽等材料，成为逃脱追击的顶级遁术法宝。战斗与辅助类宝物玄天斩灵剑：大乘期神器，斩灵剑蕴含毁灭法则，可斩杀真仙马良等强者。元合五极山：由元磁神山等材料炼制，可削弱雷劫威力，助其成功飞升真仙界。赤魂幡：由黑风旗炼制，可收服元磁神山，威力取决于祭炼生魂数量。七焰扇：通天灵宝，仿制品曾击败元婴期银翅夜叉，但完全体难以寻觅。特殊材料与辅助道具炼晶：由铁火蚁后产出，可强化法宝坚韧度，韩立用其重炼青竹蜂云剑。婆罗珠：安神定魂的宝物，助其通过虚天殿第三关极妙幻境。皇麟甲：蛮胡子赠送的防御法宝，可抵御元婴期攻击，后因损坏无法修复。\",\n",
    "        metadata={\"source\": \"韩老魔宝物.pdf\"},\n",
    "    ),\n",
    "    Document(\n",
    "        page_content=\"韩立的伴侣是南宫婉，是唯一正式结为道侣的角色。南宫婉身份：掩月宗女修，修炼《素女轮回功》，本命法宝为朱雀环。相遇经历：在血色禁地与韩立合力击杀墨蛟后因触碰其淫囊结缘，元婴期时正式结为道侣。结局：共同飞升灵界，在真仙界重逢并隐居黑土仙域，育有一女甘九真。其他重要女性角色紫灵仙子：元婴期相遇并共抗强敌，约定仙界重逢，最终选择留在魔界追求大道。元瑶：共同孕育后代，在灵界育有一子，属患难与共的灵魂知己。银月：器灵陪伴数百年，忠诚且知晓小瓶秘密，未正式结为道侣但情感深厚。\",\n",
    "        metadata={\"source\": \"韩老魔伴侣.pdf\"},\n",
    "    ),\n",
    "    Document(\n",
    "        page_content=\"韩立当前的境界为大罗金仙巅峰，其修炼历程从凡人历经炼气、筑基、结丹、元婴、化神、炼虚、合体、大乘等阶段，最终在仙界成就时间道祖后主动跌落至大罗金仙。韩立的修炼历程与境界突破人界阶段。炼气期：10岁入七玄门修炼长春功，24岁筑基成功。结丹期：在乱星海苦修六十年结丹，后借碧焰酒快速提升至结丹后期。元婴期：约200余岁在落云宗结婴，后进阶元婴中期破开灵渺园壁障。灵界阶段。化神期：坠魔谷闭关300年，借助极品灵石与极寒之焰突破。炼虚/合体期：1565岁进阶合体初期，期间啼魂兽助其脱险并飞升仙界。大乘期：不到两千年从化神修至大乘，成为灵界第一大乘，人称“韩天尊”。仙界阶段。时间道祖：掌天瓶辅助下成就时间道祖，联合其他道祖击杀混沌道祖。大罗金仙巅峰：为避免天道侵蚀主动放弃道祖之位，境界回落至大罗金仙。\",\n",
    "        metadata={\"source\": \"韩老魔的境界.pdf\"},\n",
    "    ),\n",
    "    Document(\n",
    "        page_content=\"韩立从炼气期到化神期的修炼体系与《仙逆》中的王林存在差异，但核心逻辑一致：练气→筑基→结丹→元婴→化神是基础框架，不同阶段通过吞噬、炼制法宝等方式强化实力。实力对比同境界对比筑基期：韩立依靠8颗筑基丹突破，初期实力弱于王林（凝气十五层+丹宝飞剑）；但后期通过大衍诀、青元剑诀等功法，实力反超。结丹期：韩立青元剑诀修炼至第八层，配合风雷翅、噬金虫等手段，可对抗元婴修士；而王林仅靠结丹初期实力尚不足以抗衡同阶。跨境界挑战韩立虽无法越级击杀强敌，但凭借对功法的极致运用和保命手段（如虚天鼎、噬金虫），在同阶中具备压倒性优势。例如元婴初期即可击杀元婴修士，后期更可对抗真灵级存在。关键突破节点化神初期：韩立凭借元磁神光功法、大庚剑阵及六翼霜蚣进化体，已具备灵界顶尖战力。大乘期：玄天斩灵剑与梵圣真魔功结合，达到人界战力巅峰，可直面真仙级存在。\",\n",
    "        metadata={\"source\": \"韩老魔的实力对比.pdf\"},\n",
    "    ),\n",
    "]\n",
    "# 创建表向量数据库\n",
    "# client1 = chromadb.HttpClient(host='101.42.116.90', port=7080)\n",
    "# 先创建租户（若不存在）\n",
    "# client1.create_tenant(\"default_tenant\")  \n",
    "# 再创建集合（相当于数据库）\n",
    "# collection1 = client1.get_or_create_collection(\n",
    "#     name=\"llm_python_txt_1\",\n",
    "#     tenant=\"default_tenant\"\n",
    "# )\n",
    "# 构建远程向量数据库\n",
    "chroma_client = chromadb.HttpClient(host='101.42.116.90', port=7080, database=\"default_database\", tenant=\"default_tenant\")\n",
    "embedding=OpenAIEmbeddings(model=\"BAAI/bge-m3\", api_key=\"sk-\", base_url=\"https://api.siliconflow.cn/v1\", dimensions=1024)\n",
    "vectorstore = Chroma.from_documents(\n",
    "    documents,\n",
    "    client=chroma_client,\n",
    "    collection_name=\"txt_000\",  # 集合名称，会自动创建\n",
    "    embedding=embedding,\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "2eda7a74-ce80-45c7-b1b5-19f2213999e6",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[(Document(id='69672ba4-54dd-4860-94a4-b991c6c0bb91', metadata={'source': '韩老魔伴侣.pdf'}, page_content='韩立的伴侣是南宫婉，是唯一正式结为道侣的角色。南宫婉身份：掩月宗女修，修炼《素女轮回功》，本命法宝为朱雀环。相遇经历：在血色禁地与韩立合力击杀墨蛟后因触碰其淫囊结缘，元婴期时正式结为道侣。结局：共同飞升灵界，在真仙界重逢并隐居黑土仙域，育有一女甘九真。其他重要女性角色紫灵仙子：元婴期相遇并共抗强敌，约定仙界重逢，最终选择留在魔界追求大道。元瑶：共同孕育后代，在灵界育有一子，属患难与共的灵魂知己。银月：器灵陪伴数百年，忠诚且知晓小瓶秘密，未正式结为道侣但情感深厚。'), 1.4259977), (Document(id='a84a9938-dfd4-424f-adf2-31f9ee5ff39e', metadata={'source': '韩老魔的境界.pdf'}, page_content='韩立当前的境界为大罗金仙巅峰，其修炼历程从凡人历经炼气、筑基、结丹、元婴、化神、炼虚、合体、大乘等阶段，最终在仙界成就时间道祖后主动跌落至大罗金仙。韩立的修炼历程与境界突破人界阶段。炼气期：10岁入七玄门修炼长春功，24岁筑基成功。结丹期：在乱星海苦修六十年结丹，后借碧焰酒快速提升至结丹后期。元婴期：约200余岁在落云宗结婴，后进阶元婴中期破开灵渺园壁障。灵界阶段。化神期：坠魔谷闭关300年，借助极品灵石与极寒之焰突破。炼虚/合体期：1565岁进阶合体初期，期间啼魂兽助其脱险并飞升仙界。大乘期：不到两千年从化神修至大乘，成为灵界第一大乘，人称“韩天尊”。仙界阶段。时间道祖：掌天瓶辅助下成就时间道祖，联合其他道祖击杀混沌道祖。大罗金仙巅峰：为避免天道侵蚀主动放弃道祖之位，境界回落至大罗金仙。'), 1.4565403), (Document(id='5e6022a4-d53d-4f7b-8a6c-fbb034cea31e', metadata={'source': '韩老魔的实力对比.pdf'}, page_content='韩立从炼气期到化神期的修炼体系与《仙逆》中的王林存在差异，但核心逻辑一致：练气→筑基→结丹→元婴→化神是基础框架，不同阶段通过吞噬、炼制法宝等方式强化实力。实力对比同境界对比筑基期：韩立依靠8颗筑基丹突破，初期实力弱于王林（凝气十五层+丹宝飞剑）；但后期通过大衍诀、青元剑诀等功法，实力反超。结丹期：韩立青元剑诀修炼至第八层，配合风雷翅、噬金虫等手段，可对抗元婴修士；而王林仅靠结丹初期实力尚不足以抗衡同阶。跨境界挑战韩立虽无法越级击杀强敌，但凭借对功法的极致运用和保命手段（如虚天鼎、噬金虫），在同阶中具备压倒性优势。例如元婴初期即可击杀元婴修士，后期更可对抗真灵级存在。关键突破节点化神初期：韩立凭借元磁神光功法、大庚剑阵及六翼霜蚣进化体，已具备灵界顶尖战力。大乘期：玄天斩灵剑与梵圣真魔功结合，达到人界战力巅峰，可直面真仙级存在。'), 1.4711889), (Document(id='4fbc8cc0-1104-42aa-8640-fb61bd422df7', metadata={'source': '韩老魔宝物.pdf'}, page_content='韩立的宝物可分为不同阶段的重要物品及战斗法宝两类：关键生存型宝物掌天瓶：核心外挂道具，可催熟灵药、凝聚时间晶粒，助其突破瓶颈并多次穿越时空。青竹蜂云剑：本命法宝，由万年金雷竹炼制，后期精炼至剑心通灵境界，配合剑阵可斩杀同阶修士。风雷翅：由雷鹏双翅炼制，强化后融入鲲鹏之羽等材料，成为逃脱追击的顶级遁术法宝。战斗与辅助类宝物玄天斩灵剑：大乘期神器，斩灵剑蕴含毁灭法则，可斩杀真仙马良等强者。元合五极山：由元磁神山等材料炼制，可削弱雷劫威力，助其成功飞升真仙界。赤魂幡：由黑风旗炼制，可收服元磁神山，威力取决于祭炼生魂数量。七焰扇：通天灵宝，仿制品曾击败元婴期银翅夜叉，但完全体难以寻觅。特殊材料与辅助道具炼晶：由铁火蚁后产出，可强化法宝坚韧度，韩立用其重炼青竹蜂云剑。婆罗珠：安神定魂的宝物，助其通过虚天殿第三关极妙幻境。皇麟甲：蛮胡子赠送的防御法宝，可抵御元婴期攻击，后因损坏无法修复。'), 1.491421)]\n"
     ]
    }
   ],
   "source": [
    "\n",
    "# vectorstore.similarity_search(\"伴侣\") # 检索\n",
    "# await vectorstore.asimilarity_search(\"伴侣\") # 异步处理检索\n",
    "print(vectorstore.similarity_search_with_score(\"伴侣\"))  # 返回相似度检索"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "e8ca14c0-b588-4156-907e-8217112c849d",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[Document(id='69672ba4-54dd-4860-94a4-b991c6c0bb91', metadata={'source': '韩老魔伴侣.pdf'}, page_content='韩立的伴侣是南宫婉，是唯一正式结为道侣的角色。南宫婉身份：掩月宗女修，修炼《素女轮回功》，本命法宝为朱雀环。相遇经历：在血色禁地与韩立合力击杀墨蛟后因触碰其淫囊结缘，元婴期时正式结为道侣。结局：共同飞升灵界，在真仙界重逢并隐居黑土仙域，育有一女甘九真。其他重要女性角色紫灵仙子：元婴期相遇并共抗强敌，约定仙界重逢，最终选择留在魔界追求大道。元瑶：共同孕育后代，在灵界育有一子，属患难与共的灵魂知己。银月：器灵陪伴数百年，忠诚且知晓小瓶秘密，未正式结为道侣但情感深厚。'), Document(id='a84a9938-dfd4-424f-adf2-31f9ee5ff39e', metadata={'source': '韩老魔的境界.pdf'}, page_content='韩立当前的境界为大罗金仙巅峰，其修炼历程从凡人历经炼气、筑基、结丹、元婴、化神、炼虚、合体、大乘等阶段，最终在仙界成就时间道祖后主动跌落至大罗金仙。韩立的修炼历程与境界突破人界阶段。炼气期：10岁入七玄门修炼长春功，24岁筑基成功。结丹期：在乱星海苦修六十年结丹，后借碧焰酒快速提升至结丹后期。元婴期：约200余岁在落云宗结婴，后进阶元婴中期破开灵渺园壁障。灵界阶段。化神期：坠魔谷闭关300年，借助极品灵石与极寒之焰突破。炼虚/合体期：1565岁进阶合体初期，期间啼魂兽助其脱险并飞升仙界。大乘期：不到两千年从化神修至大乘，成为灵界第一大乘，人称“韩天尊”。仙界阶段。时间道祖：掌天瓶辅助下成就时间道祖，联合其他道祖击杀混沌道祖。大罗金仙巅峰：为避免天道侵蚀主动放弃道祖之位，境界回落至大罗金仙。'), Document(id='5e6022a4-d53d-4f7b-8a6c-fbb034cea31e', metadata={'source': '韩老魔的实力对比.pdf'}, page_content='韩立从炼气期到化神期的修炼体系与《仙逆》中的王林存在差异，但核心逻辑一致：练气→筑基→结丹→元婴→化神是基础框架，不同阶段通过吞噬、炼制法宝等方式强化实力。实力对比同境界对比筑基期：韩立依靠8颗筑基丹突破，初期实力弱于王林（凝气十五层+丹宝飞剑）；但后期通过大衍诀、青元剑诀等功法，实力反超。结丹期：韩立青元剑诀修炼至第八层，配合风雷翅、噬金虫等手段，可对抗元婴修士；而王林仅靠结丹初期实力尚不足以抗衡同阶。跨境界挑战韩立虽无法越级击杀强敌，但凭借对功法的极致运用和保命手段（如虚天鼎、噬金虫），在同阶中具备压倒性优势。例如元婴初期即可击杀元婴修士，后期更可对抗真灵级存在。关键突破节点化神初期：韩立凭借元磁神光功法、大庚剑阵及六翼霜蚣进化体，已具备灵界顶尖战力。大乘期：玄天斩灵剑与梵圣真魔功结合，达到人界战力巅峰，可直面真仙级存在。')], [Document(id='a84a9938-dfd4-424f-adf2-31f9ee5ff39e', metadata={'source': '韩老魔的境界.pdf'}, page_content='韩立当前的境界为大罗金仙巅峰，其修炼历程从凡人历经炼气、筑基、结丹、元婴、化神、炼虚、合体、大乘等阶段，最终在仙界成就时间道祖后主动跌落至大罗金仙。韩立的修炼历程与境界突破人界阶段。炼气期：10岁入七玄门修炼长春功，24岁筑基成功。结丹期：在乱星海苦修六十年结丹，后借碧焰酒快速提升至结丹后期。元婴期：约200余岁在落云宗结婴，后进阶元婴中期破开灵渺园壁障。灵界阶段。化神期：坠魔谷闭关300年，借助极品灵石与极寒之焰突破。炼虚/合体期：1565岁进阶合体初期，期间啼魂兽助其脱险并飞升仙界。大乘期：不到两千年从化神修至大乘，成为灵界第一大乘，人称“韩天尊”。仙界阶段。时间道祖：掌天瓶辅助下成就时间道祖，联合其他道祖击杀混沌道祖。大罗金仙巅峰：为避免天道侵蚀主动放弃道祖之位，境界回落至大罗金仙。'), Document(id='69672ba4-54dd-4860-94a4-b991c6c0bb91', metadata={'source': '韩老魔伴侣.pdf'}, page_content='韩立的伴侣是南宫婉，是唯一正式结为道侣的角色。南宫婉身份：掩月宗女修，修炼《素女轮回功》，本命法宝为朱雀环。相遇经历：在血色禁地与韩立合力击杀墨蛟后因触碰其淫囊结缘，元婴期时正式结为道侣。结局：共同飞升灵界，在真仙界重逢并隐居黑土仙域，育有一女甘九真。其他重要女性角色紫灵仙子：元婴期相遇并共抗强敌，约定仙界重逢，最终选择留在魔界追求大道。元瑶：共同孕育后代，在灵界育有一子，属患难与共的灵魂知己。银月：器灵陪伴数百年，忠诚且知晓小瓶秘密，未正式结为道侣但情感深厚。'), Document(id='5e6022a4-d53d-4f7b-8a6c-fbb034cea31e', metadata={'source': '韩老魔的实力对比.pdf'}, page_content='韩立从炼气期到化神期的修炼体系与《仙逆》中的王林存在差异，但核心逻辑一致：练气→筑基→结丹→元婴→化神是基础框架，不同阶段通过吞噬、炼制法宝等方式强化实力。实力对比同境界对比筑基期：韩立依靠8颗筑基丹突破，初期实力弱于王林（凝气十五层+丹宝飞剑）；但后期通过大衍诀、青元剑诀等功法，实力反超。结丹期：韩立青元剑诀修炼至第八层，配合风雷翅、噬金虫等手段，可对抗元婴修士；而王林仅靠结丹初期实力尚不足以抗衡同阶。跨境界挑战韩立虽无法越级击杀强敌，但凭借对功法的极致运用和保命手段（如虚天鼎、噬金虫），在同阶中具备压倒性优势。例如元婴初期即可击杀元婴修士，后期更可对抗真灵级存在。关键突破节点化神初期：韩立凭借元磁神光功法、大庚剑阵及六翼霜蚣进化体，已具备灵界顶尖战力。大乘期：玄天斩灵剑与梵圣真魔功结合，达到人界战力巅峰，可直面真仙级存在。')]]\n"
     ]
    }
   ],
   "source": [
    "\n",
    "retriever = vectorstore.as_retriever(\n",
    "    search_type=\"similarity\",\n",
    "    search_kwargs={\"k\": 3},\n",
    ")\n",
    "\n",
    "print(retriever.batch([\"伴侣\", \"实力\"]))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "8950e186-7df4-4cd4-90aa-9726c44cd005",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "根据提供的上下文，韩立是一位修仙者，其修炼历程和特点如下：\n",
      "\n",
      "**修炼历程与境界：**\n",
      "\n",
      "*   **人界阶段：**\n",
      "    *   炼气期：10岁入七玄门修炼长春功，24岁筑基成功。\n",
      "    *   结丹期：在乱星海苦修六十年结丹，后借碧焰酒快速提升至结丹后期。\n",
      "    *   元婴期：约200余岁在落云宗结婴，后进阶元婴中期破开灵渺园壁障。\n",
      "    *   化神期：坠魔谷闭关300年，借助极品灵石与极寒之焰突破。\n",
      "    *   炼虚/合体期：1565岁进阶合体初期，期间啼魂兽助其脱险并飞升仙界。\n",
      "    *   大乘期：不到两千年从化神修至大乘，成为灵界第一大乘，人称“韩天尊”。\n",
      "*   **灵界阶段：**\n",
      "    *   时间道祖：掌天瓶辅助下成就时间道祖，联合其他道祖击杀混沌道祖。\n",
      "    *   大罗金仙巅峰：为避免天道侵蚀主动放弃道祖之位，境界回落至大罗金仙。\n",
      "*   **核心修炼逻辑：**练气→筑基→结丹→元婴→化神是基础框架，不同阶段通过吞噬、炼制法宝等方式强化实力。\n",
      "\n",
      "**实力特点：**\n",
      "\n",
      "*   **实力增长迅速：**例如，韩立依靠8颗筑基丹突破，后期通过功法，实力反超依靠筑基丹突破的王林。\n",
      "*   **同境界战斗力强：**筑基期后期实力已不弱于王林；结丹期配合风雷翅、噬金虫等手段，可对抗元婴修士。\n",
      "*   **跨境界挑战能力强：**元婴初期即可击杀元婴修士，后期更可对抗真灵级存在。\n",
      "*   **顶尖战力：**化神初期凭借元磁神光功法、大庚剑阵及六翼霜蚣进化体，已具备灵界顶尖战力；大乘期结合玄天斩灵剑与梵圣真魔功，达到人界战力巅峰，可直面真仙级存在。\n",
      "\n",
      "**宝物：**\n",
      "\n",
      "韩立的宝物可分为关键生存型宝物、战斗与辅助类宝物、特殊材料与辅助道具三类：\n",
      "\n",
      "*   **关键生存型宝物：**\n",
      "    *   掌天瓶：核心外挂道具，可催熟灵药、凝聚时间晶粒，助其突破瓶颈并多次穿越时空。\n",
      "    *   青竹蜂云剑：本命法宝，由万年金雷竹炼制，后期精炼至剑心通灵境界，配合剑阵可斩杀同阶修士。\n",
      "    *   风雷翅：由雷鹏双翅炼制，强化后融入鲲鹏之羽等材料，成为逃脱追击的顶级遁术法宝。\n",
      "*   **战斗与辅助类宝物：**\n",
      "    *   玄天斩灵剑：大乘期神器，斩灵剑蕴含毁灭法则，可斩杀真仙马良等强者。\n",
      "    *   元合五极山：由元磁神山等材料炼制，可削弱雷劫威力，助其成功飞升真仙界。\n",
      "    *   赤魂幡：由黑风旗炼制，可收服元磁神山，威力取决于祭炼生魂数量。\n",
      "    *   七焰扇：通天灵宝，仿制品曾击败元婴期银翅夜叉，但完全体难以寻觅。\n",
      "*   **特殊材料与辅助道具：**\n",
      "    *   炼晶：由铁火蚁后产出，可强化法宝坚韧度，韩立用其重炼青竹蜂云剑。\n",
      "    *   婆罗珠：安神定魂的宝物，助其通过虚天殿第三关极妙幻境。\n",
      "    *   皇麟甲：蛮胡子赠送的防御法宝，可抵御元婴期攻击，后因损坏无法修复。\n",
      "\n",
      "**总结：**\n",
      "\n",
      "韩立是一位实力强大、经历丰富的修仙者，拥有丰富的法宝和独特的修炼方法，能够通过吞噬、炼制等方式强化自身实力，并在各个境界都取得了显著的成就。他是一位典型的“韩老魔”形象，以自身的方式在修仙界不断前行。\n",
      "\n"
     ]
    }
   ],
   "source": [
    "from langchain_openai import OpenAIEmbeddings\n",
    "import chromadb\n",
    "from langchain_openai import ChatOpenAI\n",
    "from langchain_core.prompts import ChatPromptTemplate\n",
    "from langchain_core.runnables import RunnablePassthrough\n",
    "from langchain_chroma import Chroma\n",
    "\n",
    "llm = ChatOpenAI(model=\"GLM-4-Flash-250414\", api_key=\".Xww7vJh42Bf2KPA8\", base_url=\"https://open.bigmodel.cn/api/paas/v4/\")\n",
    "\n",
    "message = \"\"\"\n",
    "仅使用提供的上下文回答此问题。\n",
    "\n",
    "{question}\n",
    "\n",
    "Context:\n",
    "{context}\n",
    "\"\"\"\n",
    "\n",
    "prompt = ChatPromptTemplate.from_messages([(\"human\", message)])\n",
    "rag_chain = {\"context\": retriever, \"question\": RunnablePassthrough()} | prompt | llm\n",
    "response = rag_chain.invoke(\"跟我说说韩立\")\n",
    "\n",
    "print(response.content)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "a267ece7-d6e6-4347-8a17-9d42d9455851",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.12.9"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
